Guild icon
wafer.space Community
🏗️ - Designing / digital
Between 2026-02-28 11:59 p.m. and 2026-04-01 12:00 a.m.
Avatar
Egor Lukyanchenko 2026-03-10 2:52 p.m.
I've finally written some comprehensible documentation for my open-source eFuse OTP memory compiler, which was used to generate eFuse IPs for the Run 1 testchip. In case someone is considering using eFuse in their design during later runs, please check it out. I'm open to any suggestions regarding compiler improvements, and would be happy to assist with eFuse IP integration if needed.
🎉 3
Leo Moser (mole99) started a thread. 2026-03-10 3:22 p.m.
Avatar
Avatar
Tim 'mithro' Ansell
beardothaweirdo 2026-03-13 5:05 a.m.
If it is helpful, I have a pretty nice systemverilog testbench I can share when I used to teach a SerDes course. It is integrated into virtuoso, Basically, it drops a random 8 bits out -> 8b10b encoding -> PISO -> channel driver -> channel -> CTLE/AMP/DFE -> slicer -> 10b8b decode -> compares to the random 8bits that should have been sent and flags it. There is a CDR attached to the slicer. it is not PAM4 but it could be extended to that.
Avatar
Tim 'mithro' Ansell 2026-03-13 5:06 a.m.
@beardothaweirdo - Any chance you could port to open source tooling? Verilator's systemverilog testbench support has come a long way these days.
Avatar
beardothaweirdo 2026-03-13 5:08 a.m.
Well, it is system verilog, I could share the testbench structure. Basically, I had students design everything from the 8b10b output to the 10b8b input via schematics in FreePDK15 and FreePDK3. I could help stand up the FreePDKs at least from questions and simulations if needed. I upgraded the FreePDK15 to have integration in cadence instead of python wrappers and I did the TCAD to Spice on the models and setup a cadence PDK for schematics (no DRC/LVS).
5:09 a.m.
I can share my systemverilog source
5:09 a.m.
and I can check to make sure that the 8b10b and 10b8b encoding/decoding is shareable (I think I snagged it offline).
5:10 a.m.
The real power in it is that all bits that go down the channel are kept in a memory in the testbench and then they are checked as they come off the final reciever. I also have some VerilogA and VerilogAMS of all the other components in there as well.
5:12 a.m.
If you can do mixed mode simulation then this is a good testbench for SerDes. I have one with a verilogA PLL and another with a verilogAMS DLL. have a few topologies things as well in there.
5:15 a.m.
I am not sure I will have the time to port it over the next couple of months. I also have something similar for a flipflop.
Avatar
beardothaweirdo 2026-03-13 5:25 a.m.
I have a pile of stuff from the Digital Electronics course I taught for a while. At some point I guess I need to just port it to opensource and put it in the wild. but there are only so many hours in the day and I am spoiled with industry tools.
5:28 a.m.
Oh, I didn't hit reply to you @Tim 'mithro' Ansell
Avatar
Avatar
beardothaweirdo
I have a pile of stuff from the Digital Electronics course I taught for a while. At some point I guess I need to just port it to opensource and put it in the wild. but there are only so many hours in the day and I am spoiled with industry tools.
Tim 'mithro' Ansell 2026-03-13 6:48 a.m.
Maybe find some excited undergrads to do it for you? 😛
Avatar
Avatar
Tim 'mithro' Ansell
Maybe find some excited undergrads to do it for you? 😛
beardothaweirdo 2026-03-13 6:50 a.m.
It was a PhD level class... as far as I know I am the only undergraduate I know that had ever taken in when Dr. Franzon was teaching the course. It was how I got into his research group as an undergraduate.
Avatar
Avatar
beardothaweirdo
If you can do mixed mode simulation then this is a good testbench for SerDes. I have one with a verilogA PLL and another with a verilogAMS DLL. have a few topologies things as well in there.
Matt G. (Mobius) 2026-03-19 4:40 p.m.
I just put this together for cocotb AMS with standard spice rather than VerilogA/VerilogAMS: https://github.com/VLSIDA/cocotbext-ams
An analog simulator bridge for cocotb — open-source mixed-signal co-simulation - VLSIDA/cocotbext-ams
Avatar
Avatar
Matt G. (Mobius)
I just put this together for cocotb AMS with standard spice rather than VerilogA/VerilogAMS: https://github.com/VLSIDA/cocotbext-ams
beardothaweirdo 2026-03-19 4:43 p.m.
Cool, I will take a look! There are both veriloga and verilogams can it handle both? I assume it handles system verilog and verilog too.
Avatar
Avatar
beardothaweirdo
Cool, I will take a look! There are both veriloga and verilogams can it handle both? I assume it handles system verilog and verilog too.
Matt G. (Mobius) 2026-03-19 4:43 p.m.
No, it cannot handle either verilogA nor verilogAMS.
Avatar
Avatar
Matt G. (Mobius)
No, it cannot handle either verilogA nor verilogAMS.
Matt G. (Mobius) 2026-03-19 4:44 p.m.
It's intended as spice + (System) Verilog
Avatar
Avatar
Matt G. (Mobius)
It's intended as spice + (System) Verilog
Matt G. (Mobius) 2026-03-19 4:44 p.m.
Are you aware of any open tools for VerilogA/VerilogAMS verification against spice?
4:45 p.m.
I'm not sure I like this discord threading. (I don't usually use discord)
Avatar
beardothaweirdo 2026-03-19 4:49 p.m.
Verilog-A → OpenVAF → ngspice Digital → Verilator Is one possible, no vams though just verilogA which is workable (you can just break verilogams into a verilogA and verilog file, but that is not as closely coupled @Matt G. (Mobius) (edited)
4:50 p.m.
Gnucap Verilog-AMS is an attempt that is out there. Maybe we can improve it to support. Not opposed to writing a proposal for it either.
Avatar
Avatar
Matt G. (Mobius)
I'm not sure I like this discord threading. (I don't usually use discord)
beardothaweirdo 2026-03-19 4:52 p.m.
Lol you and me both, it is easier than some, worse than others, but long gone it seems are the days of emacs, irc, bbs, and vim users... Le sigh...
Avatar
Avatar
beardothaweirdo
Lol you and me both, it is easier than some, worse than others, but long gone it seems are the days of emacs, irc, bbs, and vim users... Le sigh...
I'm still on libera IRC, there's even some discord servers I'm in with a bot that bridges the two
🔥 1
Avatar
Avatar
nmz787
I'm still on libera IRC, there's even some discord servers I'm in with a bot that bridges the two
Matt G. (Mobius) 2026-03-19 6:33 p.m.
I am as well, but no bridge.
Avatar
Avatar
beardothaweirdo
Verilog-A → OpenVAF → ngspice Digital → Verilator Is one possible, no vams though just verilogA which is workable (you can just break verilogams into a verilogA and verilog file, but that is not as closely coupled @Matt G. (Mobius) (edited)
One thing with respect to the verilog-a -> OpenVAF flow is that the Verilog-a syntax support is very minimal. I believe this was intended to support device models that are in Verilog-a first and foremost, and less so about supporting behavior models e.g. for vcos or other analog blocks. So a lot of the models you might find on designer's guide won't work with this flow to my knowledge.
Avatar
Avatar
Thomas Dexter
One thing with respect to the verilog-a -> OpenVAF flow is that the Verilog-a syntax support is very minimal. I believe this was intended to support device models that are in Verilog-a first and foremost, and less so about supporting behavior models e.g. for vcos or other analog blocks. So a lot of the models you might find on designer's guide won't work with this flow to my knowledge.
beardothaweirdo 2026-03-19 9:50 p.m.
Well that is disheartening.
Avatar
beardothaweirdo 2026-03-19 9:58 p.m.
has anybody used Gnucap? @Thomas Dexter (edited)
Exported 28 message(s)
Timezone: UTC+0